package cn.wolfcode.crm.mapper;

import cn.wolfcode.crm.domain.Employee;
import cn.wolfcode.crm.query.QueryObject;
import org.apache.ibatis.annotations.Param;

import java.util.List;

//定义操作Employee表的方法
public interface EmployeeMapper {

    //增加的方法
    void save(Employee e);

    //删除数据的方法
    void delete(Long id);

    void update(Employee e);

    //根据id查询部门
    Employee get(Long id);

    //查询所有的部门
    List<Employee> listAll();
    //查询总条数
    int selectForCount(QueryObject qo);

    //查询结果集
    List<Employee> selectForList(QueryObject qo);

    void saveEmpAndROleRelation(@Param("empId") Long empId, @Param("roleId") Long roleId);

    void deleteEmpRoleRelation(Long id);

    Employee selectByUsernameAndPassword(@Param("name") String name, @Param("password") String password);

    void batchDelete(Long[] ids);
}
